
$(function(){
 	//初始的一些参数
 	var aog = 9.80665*5;//重力加速度acceleration of gravity后续可以根据经纬度改变|9.8px/s太小|修正为5倍
 	var flexibility = $("#flexibility").val(); //墙壁的弹性
 	var density = $("#density").val(); //物体的密度
 	/*
 	 *需要执行方法的对象
 	 */
	var ball = document.getElementById("ball");
	var squre = document.getElementById("squre");
	var smallball = document.getElementById("smallball");
 	/*
 	 *对象执行的方法
 	 */

 		//0、初始事件：刷新页面随机改变墙壁与物体的颜色
	var colorStart = '#'+('00000'+(Math.random()*0x1000000<<0).toString(16)).slice(-6);
	squre.style.borderColor = colorStart;
	ball.style.borderColor = colorStart;
	smallball.style.backgroundColor = "white";
	ball.style.backgroundColor = colorStart;
	/*
	 *对象执行的其他方法
	 */
		//1、设置定时器及执行次数。
	function interval_action(){
		randomMove();
		var i = 1 ;
		var t = setInterval(function(){
					if(i>2){
						clearInterval(t);
					}else{
						randomMove();
						i++;
					}
				},1000);
	}
	
		//2、随机变更位置
	function randomMove(){ 
		var top = Math.random()*700+"px";
		var left = Math.random()*700+"px";
		ball.style.marginTop= top;
		ball.style.marginLeft= left;
		ball.style.marginBottom= "0";
		ball.style.marginRight= "0";
	}

		//3、随机变更颜色
	function randomColor(){
		var color = '#'+('00000'+(Math.random()*0x1000000<<0).toString(16)).slice(-6);
		ball.style.backgroundColor= color;
		ball.style.borderColor = color;
		squre.style.borderColor = color;	
	}
		//4、自由落体运动
	function freeFall(){	
		var squreH = squre.offsetTop + $(squre).height()-1;	//计算父元素(外壳div)内底的纵坐标,顶部纵坐标+自身高度-底部border宽度	
		var ballH = ball.offsetTop + $(ball).height();		//该元素(球div)外底部的纵坐标，顶部纵坐标+自身高度
		var fallH = squreH-ballH;							//计算球距离外壳底部的距离也即球下落高度，父元素内底高度-球外底高度
		//接下来就开始降落啦
		var fallTime =  Math.sqrt(2*fallH/aog);   // h=g*t*t/2 计算下落总用时,单位：秒
		var speed = 0;								//下落速度
		var realTime = 0;							//下落时间
		var precision = 0.1;						//精确度
		var frequency = (parseFloat(fallTime)/parseFloat(precision)); //执行下落动作的次数
		console.log(frequency);
		for(var i=0;i<15;i++){
			setTimeout(function(){
				speed = aog*realTime;
				var marginTop = $(ball).css("marginTop").split("px");
				var newMarginTop = (parseFloat(marginTop[0]) + parseFloat((speed*realTime)/2))+"px";
				$(ball).css("marginTop",newMarginTop); console.log(newMarginTop);
				realTime += precision;console.log(realTime);
			},0)
		}
	}

	/*
	 *触发事件
	 */
		//1、点空间
	squre.onclick = function(){
		//randomMove();
	}
		//2、点球
	ball.onclick = function(){
		freeFall();
	}
	
})
